home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 July: Mac OS SDK / Dev.CD Jul 96 SDK / Dev.CD Jul 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc Development Framework / Developer University / DUProjects / Talker SOM Library / •SOM / STalker.xh < prev    next >
Encoding:
Text File  |  1996-04-01  |  10.3 KB  |  442 lines  |  [TEXT/CWIE]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: :STalker.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emitxh.dll: 2.33
  8.  */
  9.  
  10. #ifndef SOM_Module_DevUniv_defined
  11. #define SOM_Module_DevUniv_defined 1
  12. #include <som.xh>
  13.  
  14. /*
  15.  * Start of user-defined types:
  16.  */
  17. class SOMClass;
  18. class SOMObject;
  19.  
  20. /*
  21.  * End of user-defined types.
  22.  */
  23. #endif /* SOM_Module_DevUniv_defined */
  24.  
  25. #ifndef SOM_DevUniv_SComputer_xh
  26. #define SOM_DevUniv_SComputer_xh
  27.  
  28. class DevUniv_SComputer;
  29.  
  30. #define DevUniv_SComputer_MajorVersion 1
  31. #define DevUniv_SComputer_MinorVersion 0
  32.  
  33. /* C++ SOM defs */
  34. #include <somcls.xh>
  35. #include <somcm.xh>
  36.  
  37. /* C++ parent defs */
  38. #ifndef SOM_SOMObject_xh
  39. #include <somobj.xh>
  40. #endif
  41.  
  42. #ifndef DevUniv_SComputer_API
  43. #define DevUniv_SComputer_API
  44. /*
  45.  * -- The Class API
  46.  */
  47.  
  48. /*
  49.  * Start of user-defined types:
  50.  */
  51.  
  52. /*
  53.  * End of user-defined types.
  54.  */
  55.  
  56. #ifdef OLDIBMSOMAPISUPPORT
  57. #define DevUniv_SComputerCClassData DevUniv_SComputerClassData
  58. #define DevUniv_SComputerNewClass(major,minor) somNewVersionedClassReference(DevUniv_SComputer,major,minor)
  59. #endif
  60.  
  61. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  62. #define DevUniv_SComputerMetaClass SOMClass
  63.  
  64.  
  65. /* The API to the DevUniv_SComputer class object, and the methods it introduces. */
  66. SOMEXTERN struct DevUniv_SComputerClassDataStructure {
  67. #ifdef OLDIBMSOMAPISUPPORT
  68.     SOMClass            *classObject;    /* always zero, use somNewClassReference instead */
  69. #else
  70.     long zero;
  71. #endif
  72.     somStaticClassInfo *sci;
  73.     somDToken        instanceDataToken;
  74.     long reserved [3];
  75.     somMToken HasTextToSpeech;
  76. } SOMDLINK DevUniv_SComputerClassData;
  77.  
  78. #if !defined(DevUniv_SComputer_Class_Source) && !defined(SOM_Module_stalker_Source)
  79. #if PRAGMA_IMPORT_SUPPORTED
  80. #pragma import list DevUniv_SComputerClassData
  81. #endif
  82. #endif
  83.  
  84.  
  85. /*
  86.  * -- Typedefs and inline method declarations for left path inherited methods
  87.  * -- are omitted because this compilation had -museinheritedmethods in effect
  88.  */
  89.  
  90.  
  91. /*
  92.  * -- Typedefs for DevUniv_SComputer Method Procedures
  93.  */
  94. SOMEXTERN {
  95. typedef boolean   (* SOMLINK somTD_DevUniv_SComputer_HasTextToSpeech)(DevUniv_SComputer *somSelf, Environment *ev);
  96. }
  97.  
  98. #endif /* DevUniv_SComputer_API */
  99.  
  100.  
  101. /*
  102.  * -- This emitter treats Method Tokens as Thunks by default.
  103.  * -- Use the sc modifier "nothunks" to change this default
  104.  */
  105. #undef somresolve_
  106. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  107.  
  108. /*
  109.  * -- The C++ Wrapper Class for DevUniv_SComputer
  110.  */
  111. class DevUniv_SComputer : public SOMObject
  112. {
  113. public:
  114.  
  115. // DevUniv_SComputer::new registers use of the class object, and then uses somNew
  116. // to allocate memory and load the object method table pointer. 
  117. void *operator new(size_t size)
  118. {
  119.     SOM_IgnoreWarning(size);
  120.     // Allocate memory using the default allocator for DevUniv_SComputer, and
  121.     // clear mem & set method table pointer, call basic initialization
  122. #ifdef SOMCHKNULL
  123.     void * __somResult = (void *)
  124.       somNewObject(DevUniv_SComputer);
  125.     SOMCHKNULL(__somResult);
  126.     return __somResult;
  127. #else
  128.     return (void*) somNewObject(DevUniv_SComputer);
  129. #endif
  130. }
  131.  
  132. // DevUniv_SComputer::delete uses the default deallocator for the object's class.
  133. void operator delete(void * obj)
  134. {
  135.     if (obj) {
  136.         SOM_Resolve(obj,SOMObject,somFree)
  137.            ( (SOMObject*) obj );
  138.     }
  139. }
  140.  
  141. /* method: HasTextToSpeech */
  142. boolean   HasTextToSpeech(Environment *ev)
  143. {
  144.    #ifdef SOMCHKEXCEPT
  145.    boolean __somResult = 
  146.       SOM_ResolveD(this,DevUniv_SComputer,DevUniv_SComputer,HasTextToSpeech)
  147.     (this,ev);
  148.       SOMCHKEXCEPT;
  149.    return __somResult;
  150. #else
  151.    return SOM_ResolveD(this,DevUniv_SComputer,DevUniv_SComputer,HasTextToSpeech)
  152.     (this,ev);
  153. #endif
  154. }
  155.  
  156. };   /* DevUniv_SComputer */
  157.  
  158.  
  159.  
  160. #endif       /* SOM_DevUniv_SComputer_xh */
  161.  
  162. #ifndef SOM_DevUniv_STalker_xh
  163. #define SOM_DevUniv_STalker_xh
  164.  
  165. class DevUniv_STalker;
  166.  
  167. #define DevUniv_STalker_MajorVersion 1
  168. #define DevUniv_STalker_MinorVersion 0
  169.  
  170. /*
  171.  * Passthru lines: File: "C.xh", "before"
  172.  */
  173. class TTalker;
  174.  
  175. /* C++ SOM defs */
  176. #include <somcls.xh>
  177. #include <somcm.xh>
  178.  
  179. /* C++ parent defs */
  180. #ifndef SOM_SOMObject_xh
  181. #include <somobj.xh>
  182. #endif
  183.  
  184. #ifndef DevUniv_STalker_API
  185. #define DevUniv_STalker_API
  186. /*
  187.  * -- The Class API
  188.  */
  189.  
  190. /*
  191.  * Start of user-defined types:
  192.  */
  193.  
  194. /*
  195.  * End of user-defined types.
  196.  */
  197.  
  198. #ifdef OLDIBMSOMAPISUPPORT
  199. #define DevUniv_STalkerCClassData DevUniv_STalkerClassData
  200. #define DevUniv_STalkerNewClass(major,minor) somNewVersionedClassReference(DevUniv_STalker,major,minor)
  201. #endif
  202.  
  203. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  204. #define DevUniv_STalkerMetaClass SOMClass
  205.  
  206.  
  207. /* The API to the DevUniv_STalker class object, and the methods it introduces. */
  208. SOMEXTERN struct DevUniv_STalkerClassDataStructure {
  209. #ifdef OLDIBMSOMAPISUPPORT
  210.     SOMClass            *classObject;    /* always zero, use somNewClassReference instead */
  211. #else
  212.     long zero;
  213. #endif
  214.     somStaticClassInfo *sci;
  215.     somDToken        instanceDataToken;
  216.     long reserved [3];
  217.     somMToken SayString;
  218.     somMToken SayInteger;
  219.     somMToken SayFloat;
  220.     somMToken SayText;
  221.     somMToken Faster;
  222.     somMToken Slower;
  223.     somMToken UseVoice;
  224.     somMToken UseVoiceNamed;
  225.     somMToken GetVoiceName;
  226.     somMToken GetNumberVoices;
  227. } SOMDLINK DevUniv_STalkerClassData;
  228.  
  229. #if !defined(DevUniv_STalker_Class_Source) && !defined(SOM_Module_stalker_Source)
  230. #if PRAGMA_IMPORT_SUPPORTED
  231. #pragma import list DevUniv_STalkerClassData
  232. #endif
  233. #endif
  234.  
  235.  
  236. /*
  237.  * -- Typedefs and inline method declarations for left path inherited methods
  238.  * -- are omitted because this compilation had -museinheritedmethods in effect
  239.  */
  240.  
  241.  
  242. /*
  243.  * -- Typedefs for DevUniv_STalker Method Procedures
  244.  */
  245. SOMEXTERN {
  246. typedef void   (* SOMLINK somTD_DevUniv_STalker_SayString)(DevUniv_STalker *somSelf, Environment *ev,
  247.         char* str,
  248.         boolean wait);
  249. typedef void   (* SOMLINK somTD_DevUniv_STalker_SayInteger)(DevUniv_STalker *somSelf, Environment *ev,
  250.         long number,
  251.         boolean wait);
  252. typedef void   (* SOMLINK somTD_DevUniv_STalker_SayFloat)(DevUniv_STalker *somSelf, Environment *ev,
  253.         float number,
  254.         short digitsDesired,
  255.         boolean wait);
  256. typedef void   (* SOMLINK somTD_DevUniv_STalker_SayText)(DevUniv_STalker *somSelf, Environment *ev,
  257.         char* textPtr,
  258.         long textBytes,
  259.         boolean wait);
  260. typedef void   (* SOMLINK somTD_DevUniv_STalker_Faster)(DevUniv_STalker *somSelf, Environment *ev);
  261. typedef void   (* SOMLINK somTD_DevUniv_STalker_Slower)(DevUniv_STalker *somSelf, Environment *ev);
  262. typedef void   (* SOMLINK somTD_DevUniv_STalker_UseVoice)(DevUniv_STalker *somSelf, Environment *ev,
  263.         short index);
  264. typedef void   (* SOMLINK somTD_DevUniv_STalker_UseVoiceNamed)(DevUniv_STalker *somSelf, Environment *ev,
  265.         char* name);
  266. typedef char*   (* SOMLINK somTD_DevUniv_STalker_GetVoiceName)(DevUniv_STalker *somSelf, Environment *ev,
  267.         short index);
  268. typedef short   (* SOMLINK somTD_DevUniv_STalker_GetNumberVoices)(DevUniv_STalker *somSelf, Environment *ev);
  269. }
  270.  
  271. #endif /* DevUniv_STalker_API */
  272.  
  273.  
  274. /*
  275.  * -- This emitter treats Method Tokens as Thunks by default.
  276.  * -- Use the sc modifier "nothunks" to change this default
  277.  */
  278. #undef somresolve_
  279. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  280.  
  281. /*
  282.  * -- The C++ Wrapper Class for DevUniv_STalker
  283.  */
  284. class DevUniv_STalker : public SOMObject
  285. {
  286. public:
  287.  
  288. // DevUniv_STalker::new registers use of the class object, and then uses somNew
  289. // to allocate memory and load the object method table pointer. 
  290. void *operator new(size_t size)
  291. {
  292.     SOM_IgnoreWarning(size);
  293.     // Allocate memory using the default allocator for DevUniv_STalker, and
  294.     // clear mem & set method table pointer, call basic initialization
  295. #ifdef SOMCHKNULL
  296.     void * __somResult = (void *)
  297.       somNewObject(DevUniv_STalker);
  298.     SOMCHKNULL(__somResult);
  299.     return __somResult;
  300. #else
  301.     return (void*) somNewObject(DevUniv_STalker);
  302. #endif
  303. }
  304.  
  305. // DevUniv_STalker::delete uses the default deallocator for the object's class.
  306. void operator delete(void * obj)
  307. {
  308.     if (obj) {
  309.         SOM_Resolve(obj,SOMObject,somFree)
  310.            ( (SOMObject*) obj );
  311.     }
  312. }
  313.  
  314. /* method: SayString */
  315. void   SayString(Environment *ev,
  316.         char* str,
  317.         boolean wait)
  318. {
  319.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,SayString)
  320.     (this,ev,str,wait);
  321. #ifdef SOMCHKEXCEPT
  322.       SOMCHKEXCEPT;
  323. #endif
  324. }
  325.  
  326. /* method: SayInteger */
  327. void   SayInteger(Environment *ev,
  328.         long number,
  329.         boolean wait)
  330. {
  331.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,SayInteger)
  332.     (this,ev,number,wait);
  333. #ifdef SOMCHKEXCEPT
  334.       SOMCHKEXCEPT;
  335. #endif
  336. }
  337.  
  338. /* method: SayFloat */
  339. void   SayFloat(Environment *ev,
  340.         float number,
  341.         short digitsDesired,
  342.         boolean wait)
  343. {
  344.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,SayFloat)
  345.     (this,ev,number,digitsDesired,wait);
  346. #ifdef SOMCHKEXCEPT
  347.       SOMCHKEXCEPT;
  348. #endif
  349. }
  350.  
  351. /* method: SayText */
  352. void   SayText(Environment *ev,
  353.         char* textPtr,
  354.         long textBytes,
  355.         boolean wait)
  356. {
  357.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,SayText)
  358.     (this,ev,textPtr,textBytes,wait);
  359. #ifdef SOMCHKEXCEPT
  360.       SOMCHKEXCEPT;
  361. #endif
  362. }
  363.  
  364. /* method: Faster */
  365. void   Faster(Environment *ev)
  366. {
  367.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,Faster)
  368.     (this,ev);
  369. #ifdef SOMCHKEXCEPT
  370.       SOMCHKEXCEPT;
  371. #endif
  372. }
  373.  
  374. /* method: Slower */
  375. void   Slower(Environment *ev)
  376. {
  377.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,Slower)
  378.     (this,ev);
  379. #ifdef SOMCHKEXCEPT
  380.       SOMCHKEXCEPT;
  381. #endif
  382. }
  383.  
  384. /* method: UseVoice */
  385. void   UseVoice(Environment *ev,
  386.         short index)
  387. {
  388.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,UseVoice)
  389.     (this,ev,index);
  390. #ifdef SOMCHKEXCEPT
  391.       SOMCHKEXCEPT;
  392. #endif
  393. }
  394.  
  395. /* method: UseVoiceNamed */
  396. void   UseVoiceNamed(Environment *ev,
  397.         char* name)
  398. {
  399.    SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,UseVoiceNamed)
  400.     (this,ev,name);
  401. #ifdef SOMCHKEXCEPT
  402.       SOMCHKEXCEPT;
  403. #endif
  404. }
  405.  
  406. /* method: GetVoiceName */
  407. char*   GetVoiceName(Environment *ev,
  408.         short index)
  409. {
  410.    #ifdef SOMCHKEXCEPT
  411.    char* __somResult = 
  412.       SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,GetVoiceName)
  413.     (this,ev,index);
  414.       SOMCHKEXCEPT;
  415.    return __somResult;
  416. #else
  417.    return SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,GetVoiceName)
  418.     (this,ev,index);
  419. #endif
  420. }
  421.  
  422. /* method: GetNumberVoices */
  423. short   GetNumberVoices(Environment *ev)
  424. {
  425.    #ifdef SOMCHKEXCEPT
  426.    short __somResult = 
  427.       SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,GetNumberVoices)
  428.     (this,ev);
  429.       SOMCHKEXCEPT;
  430.    return __somResult;
  431. #else
  432.    return SOM_ResolveD(this,DevUniv_STalker,DevUniv_STalker,GetNumberVoices)
  433.     (this,ev);
  434. #endif
  435. }
  436.  
  437. };   /* DevUniv_STalker */
  438.  
  439.  
  440.  
  441. #endif       /* SOM_DevUniv_STalker_xh */
  442.